package org.fing.edu.uy.esbadp.core;

import java.io.Serializable;
import java.util.HashMap;
import java.util.Map;

public class AdpFlowRUT implements AdpFlowInterface ,Serializable {

	private static final long serialVersionUID = 6062197218600606719L;
	
	private Map<ExpressionReg, Integer> expresionReg;
	private Integer defaultIndex = 0;

	public AdpFlowRUT(){
		expresionReg = new HashMap<ExpressionReg, Integer>();
	}
	
	public AdpFlowRUT(int defaultIndex){
		this.defaultIndex = defaultIndex;
		expresionReg = new HashMap<ExpressionReg, Integer>();
	}
	
	public String getServiceName() {
		return AdpFlowConstants.RoutingServiceName;
	}

	public String getServiceCategoryName() {
		return AdpFlowConstants.RoutingServiceCategoryName;
	}

	public Map<ExpressionReg, Integer> getExpresionReg() {
		return expresionReg;
	}

	public void setExpresionReg(Map<ExpressionReg, Integer> expresionReg) {
		this.expresionReg = expresionReg;
	}
	
	public Integer getDefaultIndex() {
		return defaultIndex;
	}

	public void setDefaultIndex(Integer defaultIndex) {
		this.defaultIndex = defaultIndex;
	}
	
	public void addExprReg(ExpressionReg expression, int indexNode){
		expresionReg.put(expression, indexNode);
	}
	
	@Override
	public String toString() {
		return "AdpFlowRUT []";
	}
	
}
